A Radio Frequency Identification System is usually comprised of an interrogator (base station) commonly referred to as a reader or scanner and one or more transponders (mobile stations) usually called tags or electronic labels.
In systems of known art, the reader issues a request or command for any tags within range to reply with their identity or their stored data. In a variant, tags on detecting the presence of a reader will send their identity or stored data. The identity or stored data is transmitted by the tag using either a self-contained transmitter or by means of modulated backscatter as bursts of data within messages or packets. A message may contain either a portion or all of the identity or stored data.
The transmission from the tag in the form of identity or data will often have a checksum or cyclic redundancy code (CRC) appended to the identity or data, this checksum or CRC being used by the reader to test for the correctness of the data received by it from the tag.
Where multiple tags are present in the reader field it is important that tag transmissions and the length of messages be kept to the minimum necessary to convey identity or data content of the tags being read by the reader. This is achieved by using deliberate truncation of the tag message transmissions where the reader knows a portion of the tags' identities or data content.
Referring to FIG. 1, one method is for the reader to issue a Select instruction to the tag population present. The Select instruction contains a data field, shown in FIG. 1 as having S bits, that matches a portion of the data field in the tag identity, the tag identity having D bits. Tags whose identity have a matching portion respond by transmitting a shortened reply containing their identity omitting the portion previously transmitted by the reader, shown as N bits equal to D-S bits. A checksum or CRC, usually, but not necessarily, consisting of 16 bits, is shown appended to the N bits to define a “truncated message” or “truncated reply”.
Now referring to the checksum or CRC; this may be either generated in real time by the tag when the tag transmits its message, alternatively it may be calculated when the data is written to the tag and stored in the tag, in which case it refers to the full tag identity or stored data. When the tag transmits its full identity or stored data, the reader will not know necessarily whether the checksum or CRC was calculated by the tag at the time of transmission or whether it was previously stored in the tag.
However, if the tag transmits only a portion of its identity or stored data, for example in response to a request by the reader for it to send a “truncated reply”, in the case of a generated [in real time] checksum or CRC it will be based only on the portion of the identity or stored data actually transmitted, whereas in the case of the pre-calculated and stored checksum or CRC it will be based on the full identity or stored data. Therefore in the latter case, when the reader tests the received message for correctness using the stored checksum or CRC, it will not compute correctly and will discard the message as being in error.
This invention strives to overcome the problem described above.